[INFO] fetching crate redis_connector 0.1.1...
[INFO] checking redis_connector-0.1.1 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate redis_connector 0.1.1 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate redis_connector 0.1.1 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate redis_connector 0.1.1
[INFO] finished tweaking crates.io crate redis_connector 0.1.1
[INFO] tweaked toml for crates.io crate redis_connector 0.1.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded mocktopus_macros v0.7.11
[INFO] [stderr]   Downloaded bb8 v0.7.1
[INFO] [stderr]   Downloaded mocktopus v0.7.11
[INFO] [stderr]   Downloaded bb8-redis v0.10.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 91c20d566f6fb0ff578a7ca5ea05270e78c460c894a3b8cd8730e3ab170dfaa8
[INFO] running `Command { std: "docker" "start" "-a" "91c20d566f6fb0ff578a7ca5ea05270e78c460c894a3b8cd8730e3ab170dfaa8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "91c20d566f6fb0ff578a7ca5ea05270e78c460c894a3b8cd8730e3ab170dfaa8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "91c20d566f6fb0ff578a7ca5ea05270e78c460c894a3b8cd8730e3ab170dfaa8", kill_on_drop: false }`
[INFO] [stdout] 91c20d566f6fb0ff578a7ca5ea05270e78c460c894a3b8cd8730e3ab170dfaa8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 04fb9851f1e510d920818798784f4f52bfd275435a5758a6a6df4c4a6fb8f25f
[INFO] running `Command { std: "docker" "start" "-a" "04fb9851f1e510d920818798784f4f52bfd275435a5758a6a6df4c4a6fb8f25f", kill_on_drop: false }`
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling crc16 v0.4.0
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling async-trait v0.1.77
[INFO] [stderr]     Checking sha1_smol v1.0.0
[INFO] [stderr]    Compiling mocktopus_macros v0.7.11
[INFO] [stderr]     Checking sha1 v0.6.1
[INFO] [stderr]     Checking serde-aux v3.1.0
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking mocktopus v0.7.11
[INFO] [stdout] error[E0059]: type parameter to bare `FnOnce` trait must be a tuple
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:100:25
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl<T, O, F: FnOnce<T, Output = O>> Mockable<T, O> for F {
[INFO] [stdout]     |                         ^^^^^^^^^^ the trait `Tuple` is not implemented for `T`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `FnOnce`
[INFO] [stdout]    --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/core/src/ops/function.rs:242:1
[INFO] [stdout] help: consider restricting type parameter `T`
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl<T: std::marker::Tuple, O, F: FnOnce<T, Output = O>> Mockable<T, O> for F {
[INFO] [stdout]     |       ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0059]: type parameter to bare `FnMut` trait must be a tuple
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 |         M: FnMut<I, Output = MockResult<I, O>> + 'a,
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Tuple` is not implemented for `I`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `FnMut`
[INFO] [stdout]    --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/core/src/ops/function.rs:163:1
[INFO] [stdout] help: consider further restricting type parameter `I`
[INFO] [stdout]     |
[INFO] [stdout] 192 |         M: FnMut<I, Output = MockResult<I, O>> + 'a, I: std::marker::Tuple
[INFO] [stdout]     |                                                    ~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0059]: type parameter to bare `FnMut` trait must be a tuple
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:204:12
[INFO] [stdout]     |
[INFO] [stdout] 204 |         M: FnMut<I, Output = MockResult<I, O>>,
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Tuple` is not implemented for `I`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `FnMut`
[INFO] [stdout]    --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/core/src/ops/function.rs:163:1
[INFO] [stdout] help: consider further restricting type parameter `I`
[INFO] [stdout]     |
[INFO] [stdout] 204 |         M: FnMut<I, Output = MockResult<I, O>>, I: std::marker::Tuple
[INFO] [stdout]     |                                               ~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0059]: type parameter to bare `FnMut` trait must be a tuple
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |     unsafe fn mock_raw<M: FnMut<T, Output = MockResult<T, O>>>(&self, mock: M);
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Tuple` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `FnMut`
[INFO] [stdout]   --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/core/src/ops/function.rs:163:1
[INFO] [stdout] help: consider restricting type parameter `T`
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Mockable<T: std::marker::Tuple, O> {
[INFO] [stdout]    |                     ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0059]: type parameter to bare `FnMut` trait must be a tuple
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:65:21
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn mock_safe<M: FnMut<T, Output = MockResult<T, O>> + 'static>(&self, mock: M);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Tuple` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `FnMut`
[INFO] [stdout]   --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/core/src/ops/function.rs:163:1
[INFO] [stdout] help: consider restricting type parameter `T`
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Mockable<T: std::marker::Tuple, O> {
[INFO] [stdout]    |                     ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `I` is not a tuple
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mock_store.rs:142:59
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Ok(mut mock) => MockLayerResult::Handled(mock.call_mut(input)),
[INFO] [stdout]     |                                                           ^^^^^^^^ the trait `Tuple` is not implemented for `I`, which is required by `Box<(dyn FnMut<I, Output = MockResult<I, O>> + 'static)>: FnOnce<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `Box<(dyn FnMut<I, Output = MockResult<I, O>> + 'static)>` to implement `FnOnce<I>`
[INFO] [stdout] help: consider restricting type parameter `I`
[INFO] [stdout]     |
[INFO] [stdout] 133 | impl<I: std::marker::Tuple, O> StoredMock<I, O> {
[INFO] [stdout]     |       ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0059, E0277.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0059`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mocktopus` (lib) due to 7 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "04fb9851f1e510d920818798784f4f52bfd275435a5758a6a6df4c4a6fb8f25f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "04fb9851f1e510d920818798784f4f52bfd275435a5758a6a6df4c4a6fb8f25f", kill_on_drop: false }`
[INFO] [stdout] 04fb9851f1e510d920818798784f4f52bfd275435a5758a6a6df4c4a6fb8f25f
[INFO] checking redis_connector-0.1.1 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate redis_connector 0.1.1 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate redis_connector 0.1.1 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate redis_connector 0.1.1
[INFO] finished tweaking crates.io crate redis_connector 0.1.1
[INFO] tweaked toml for crates.io crate redis_connector 0.1.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f646a7f44979c858f48adcd918f99795062993d4db106c5c89664805c3f9bc29
[INFO] running `Command { std: "docker" "start" "-a" "f646a7f44979c858f48adcd918f99795062993d4db106c5c89664805c3f9bc29", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f646a7f44979c858f48adcd918f99795062993d4db106c5c89664805c3f9bc29", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f646a7f44979c858f48adcd918f99795062993d4db106c5c89664805c3f9bc29", kill_on_drop: false }`
[INFO] [stdout] f646a7f44979c858f48adcd918f99795062993d4db106c5c89664805c3f9bc29
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6993e041a718c4450428131b2fb52a799274f9c5824d87dcf964e9440e107d62
[INFO] running `Command { std: "docker" "start" "-a" "6993e041a718c4450428131b2fb52a799274f9c5824d87dcf964e9440e107d62", kill_on_drop: false }`
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]    Compiling crc16 v0.4.0
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling async-trait v0.1.77
[INFO] [stderr]     Checking sha1_smol v1.0.0
[INFO] [stderr]    Compiling mocktopus_macros v0.7.11
[INFO] [stderr]     Checking sha1 v0.6.1
[INFO] [stderr]     Checking serde-aux v3.1.0
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking mocktopus v0.7.11
[INFO] [stdout] error[E0059]: type parameter to bare `FnOnce` trait must be a tuple
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:100:25
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl<T, O, F: FnOnce<T, Output = O>> Mockable<T, O> for F {
[INFO] [stdout]     |                         ^^^^^^^^^^ the trait `Tuple` is not implemented for `T`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `FnOnce`
[INFO] [stdout]    --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/core/src/ops/function.rs:242:1
[INFO] [stdout] help: consider restricting type parameter `T`
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl<T: std::marker::Tuple, O, F: FnOnce<T, Output = O>> Mockable<T, O> for F {
[INFO] [stdout]     |       ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0059]: type parameter to bare `FnMut` trait must be a tuple
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 |         M: FnMut<I, Output = MockResult<I, O>> + 'a,
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Tuple` is not implemented for `I`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `FnMut`
[INFO] [stdout]    --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/core/src/ops/function.rs:163:1
[INFO] [stdout] help: consider further restricting type parameter `I`
[INFO] [stdout]     |
[INFO] [stdout] 192 |         M: FnMut<I, Output = MockResult<I, O>> + 'a, I: std::marker::Tuple
[INFO] [stdout]     |                                                    ~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0059]: type parameter to bare `FnMut` trait must be a tuple
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:204:12
[INFO] [stdout]     |
[INFO] [stdout] 204 |         M: FnMut<I, Output = MockResult<I, O>>,
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Tuple` is not implemented for `I`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `FnMut`
[INFO] [stdout]    --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/core/src/ops/function.rs:163:1
[INFO] [stdout] help: consider further restricting type parameter `I`
[INFO] [stdout]     |
[INFO] [stdout] 204 |         M: FnMut<I, Output = MockResult<I, O>>, I: std::marker::Tuple
[INFO] [stdout]     |                                               ~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0059]: type parameter to bare `FnMut` trait must be a tuple
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |     unsafe fn mock_raw<M: FnMut<T, Output = MockResult<T, O>>>(&self, mock: M);
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Tuple` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `FnMut`
[INFO] [stdout]   --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/core/src/ops/function.rs:163:1
[INFO] [stdout] help: consider restricting type parameter `T`
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Mockable<T: std::marker::Tuple, O> {
[INFO] [stdout]    |                     ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0059]: type parameter to bare `FnMut` trait must be a tuple
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mocking.rs:65:21
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn mock_safe<M: FnMut<T, Output = MockResult<T, O>> + 'static>(&self, mock: M);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Tuple` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `FnMut`
[INFO] [stdout]   --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/core/src/ops/function.rs:163:1
[INFO] [stdout] help: consider restricting type parameter `T`
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Mockable<T: std::marker::Tuple, O> {
[INFO] [stdout]    |                     ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `I` is not a tuple
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/mocktopus-0.7.11/src/mock_store.rs:142:59
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Ok(mut mock) => MockLayerResult::Handled(mock.call_mut(input)),
[INFO] [stdout]     |                                                           ^^^^^^^^ the trait `Tuple` is not implemented for `I`, which is required by `Box<(dyn FnMut<I, Output = MockResult<I, O>> + 'static)>: FnOnce<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: required for `Box<(dyn FnMut<I, Output = MockResult<I, O>> + 'static)>` to implement `FnOnce<I>`
[INFO] [stdout] help: consider restricting type parameter `I`
[INFO] [stdout]     |
[INFO] [stdout] 133 | impl<I: std::marker::Tuple, O> StoredMock<I, O> {
[INFO] [stdout]     |       ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0059, E0277.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0059`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mocktopus` (lib) due to 7 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "6993e041a718c4450428131b2fb52a799274f9c5824d87dcf964e9440e107d62", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6993e041a718c4450428131b2fb52a799274f9c5824d87dcf964e9440e107d62", kill_on_drop: false }`
[INFO] [stdout] 6993e041a718c4450428131b2fb52a799274f9c5824d87dcf964e9440e107d62
